package com.ldp.designpatterns.review.create.builder.director;

import com.ldp.designpatterns.review.create.builder.builder.HouseBuilder;
import com.ldp.designpatterns.review.create.builder.product.House;

/**
 * @ClassName HouseDirector
 * @Description TODO TODO: 建造者模式——4、指导者（Director）：负责控制建造的过程。它通过将客户端与具体建造者分离，确保产品的构建是按照一定顺序和规则进行的。
 * @Author lindipei
 * @Date 2023/10/20 14:27
 */
public class HouseDirector {
    private HouseBuilder houseBuilder;

    public HouseDirector(HouseBuilder houseBuilder){
        this.houseBuilder = houseBuilder;
    }

    public House getHouse(){
        houseBuilder.createWall();
        houseBuilder.createFloor();
        //调用执行建造房子的方法
        return houseBuilder.createHouse();
    }
}
